ASP.NET Web Forms পেজের লাইফসাইকেল হল বিভিন্ন ধাপের একটি সিরিজ যা একটি পেজের প্রারম্ভিক লোডিং থেকে শুরু করে ক্লায়েন্ট ব্রাউজারে রেন্ডার এবং তার পরবর্তী ব্যবহারের জন্য প্রস্তুত হওয়া পর্যন্ত চলে। এই লাইফসাইকেলের প্রতিটি ধাপ একটি নির্দিষ্ট কাজ সম্পাদন করে, যার মাধ্যমে পেজের ইনিশিয়ালাইজেশন, ডেটা প্রক্রিয়াকরণ, ইভেন্ট হ্যান্ডলিং, এবং রেন্ডারিং হয়।
ASP.NET Web Forms পেজের লাইফসাইকেল সাধারণত নিম্নলিখিত ধাপগুলির মাধ্যমে চলে:
এই ধাপে, পেজ এবং তার কন্ট্রোল (যেমন TextBox, Button, DropDownList ইত্যাদি) গুলি ইনিশিয়ালাইজ করা হয়। অর্থাৎ, প্রতিটি কন্ট্রোলের ID সেট করা হয় এবং কন্ট্রোলের প্রাথমিক অবস্থান নির্ধারণ করা হয়। তবে এই ধাপে কন্ট্রোলগুলোর ভ্যালু বা প্রপার্টি আসলেই লোড হয় না, কেবল কন্ট্রোল তৈরি হয়।
Label1.ID = "lblName";
এই ধাপে, ASP.NET পেজ এবং এর কন্ট্রোলগুলোর সব ডেটা পেজের সাথে লোড করা হয়। যদি পেজটি Postback না হয়, তবে পেজের প্রথমবার লোড হওয়ার সময় কন্ট্রোলগুলোর ডিফল্ট ভ্যালু লোড হয়। যদি পেজটি Postback হয়, তবে আগের সেশন বা ব্যবহারকারীর ইনপুট থেকে ডেটা লোড করা হয়।
এই ধাপটি শুধুমাত্র তখনই ঘটে, যখন পেজে কোনো Postback (অর্থাৎ, পেজটি আবার সাবমিট করা বা একটি ইভেন্ট ট্রিগার করা) হয়। এই সময়, পূর্ববর্তী সেশনের ডেটা আবার লোড হয় এবং পেজের ইভেন্টগুলির জন্য এবং হ্যান্ডলিং করা হয় (যেমন বাটনে ক্লিক করা, ড্রপডাউন লিস্ট নির্বাচন করা ইত্যাদি)।
Button1_Click
ইভেন্ট।এই ধাপে, পেজের সমস্ত কন্ট্রোলের HTML কোডে রূপান্তরিত হয়ে ব্রাউজারে পাঠানো হয়। প্রতিটি কন্ট্রোলের Render মেথড কল করা হয় এবং এটি HTML ট্যাগগুলিতে রূপান্তরিত হয়ে ব্রাউজারে পাঠানো হয়। এই ধাপে, কোড বিহাইন্ড থেকে UI কোডে (যেমন HTML, JavaScript) রূপান্তর ঘটে।
<input type="text" id="TextBox1" />
পেজের জীবনের শেষ ধাপে Unload ঘটে। এখানে পেজের সমস্ত রিসোর্স এবং মেমরি ক্লিয়ার করা হয়। এই ধাপে পেজের কোনো কার্যকরী কাজ করা হয় না, তবে পেজের সাথে সম্পর্কিত সব রিসোর্স এবং অবজেক্ট বন্ধ করা হয়।
ASP.NET Web Forms এর পেজ লাইফসাইকেল একটি নির্দিষ্ট স্টেপ অনুসরণ করে এবং প্রতিটি ধাপে একটি নির্দিষ্ট কাজ সম্পাদন করা হয়, যা পেজের ডেটা লোডিং, ইভেন্ট হ্যান্ডলিং, রেন্ডারিং এবং রিসোর্স ম্যানেজমেন্ট সহ একটি পূর্ণাঙ্গ কাজ সম্পন্ন করে। এই লাইফসাইকেল ধাপগুলি বুঝে, ডেভেলপাররা ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্টে আরো কার্যকরীভাবে কাজ করতে পারেন।
common.read_more